﻿namespace EchoWx.Models
{
    /// <summary>
    /// 基本分页实体
    /// </summary>
    public class BasePagingModel
    {
        /// <summary>
        /// 最大限制单页数据量
        /// </summary>
        protected int MAX_LIMIT_COUNT { get; set; } = 100;

        private int _limit = 13;

        /// <summary>
        /// 单页数据量
        /// </summary>
        /// 
        /// <remarks>
        /// 若 Limit 字段传值为 0 时，则只查询数量并赋值 TotalCount，不再查询结果集；
        /// </remarks>
        [Range(-1, int.MaxValue, ErrorMessage = "单页数据量数值应该大于-1！")]
        public int Limit
        {
            get { return _limit; }
            set { _limit = value > MAX_LIMIT_COUNT ? MAX_LIMIT_COUNT : value; }
        }

        /// <summary>
        /// 偏移量
        /// </summary>
        [Range(0, int.MaxValue, ErrorMessage = "偏移量数值应大于0！")]
        public int Offset { get; set; } = 0;
    }
}
